package cn.blnp.net.flowable.event.start.upgrade;

import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

/**
 * <h3>开始事件-升级开始事件</h3>
 *
 * @author <a href="mailto:blnp.yibin@qq.com">lyb</a>
 * @version 1.0
 * @since 2025/5/7 16:21
 */
@Slf4j
@SpringBootTest
public class UpgradeEventTest {

    /**
     *  <p>
     *      升级开始事件只能用于触发事件子流程，而不能用于启动流程实例。升级开始事件的XML内容是在普通开始事件定义中嵌入一个升级事件定义。升级开始事件的定义格式如下：
     *  </p>
     *
     *  <pre>
     *      {@code
     *          <!-- 定义升级 -->
     *          <escalation id="theEscalation" name="升级" escalationCode="theEscalationCode"/>
     *          <process id="escalationStartEventProcess">
     *              <!-- 定义开始节点 -->
     *              <startEvent id="escalationStart" >
     *                  <!-- 包含escalationEventDefinition子元素，代表升级开始事件 -->
     *                  <escalationEventDefinition escalationRef="theEscalation"/>
     *              </startEvent>
     *              <!-- 其他元素省略 -->
     *          </process>
     *      }
     *  </pre>
     *  <p>
     *      BPMN升级theEscalation和升级开始事件escalationStart。其中，BPMN升级的id属性值为theEscalation；开始事件通过escalationEventDefinition子元素嵌入升级事件定义，
     *   并通过设置其escalationRef属性值为theEscalation引用该BPMN升级，从而构成升级开始事件。
     *  </p>
     *  <p>
     *      如果没有设置escalationRef，或者escalationCode属性引用的升级没有提供，升级开始事件所在的事件子流程会被任何升级事件触发。如果设置了escalationRef，升级开始事件子流程只
     *   会被定义了escalationCode的升级事件触发。
     *  </p>
     **/
    @Test
    public void test() {

    }
}
